package com.ruoyi.baseMain.domain.vo;

import java.math.BigDecimal;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.ExcelDictFormat;
import com.ruoyi.common.convert.ExcelDictConvert;
import lombok.Data;
import java.util.Date;



/**
 * 客户政策视图对象 base_policy
 *
 * @author linziheng
 * @date 2024-01-08
 */
@Data
@ExcelIgnoreUnannotated
public class BasePolicyVo {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    private Long id;

    /**
     * 客户简称
     */
    @ExcelProperty(value = "客户简称")
    private String nickName;

    /**
     * 合作媒体
     */
    @ExcelProperty(value = "合作媒体", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "medium")
    private String signatory;

    /**
     * 政策类别
     */
    @ExcelProperty(value = "政策类别")
    private String policyType;

    /**
     * 备注
     */
    @ExcelProperty(value = "备注")
    private String remark;

    /**
     * 帐显返点
     */
    @ExcelProperty(value = "帐显返点%")
    private BigDecimal accountPoint;

    /**
     * 私返返点
     */
    @ExcelProperty(value = "私返返点%")
    private BigDecimal privatePoint;

    /**
     * 总返点
     */
    @ExcelProperty(value = "总返点%")
    private BigDecimal totalPoint;

    /**
     * 媒介人员ID
     */
    private String operateUser;

    /**
     * 媒介人员
     */
    @ExcelProperty(value = "媒介人员")
    private String operateUserName;

    @ExcelProperty(value = "状态", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "policy_status")
    private String status;


    private String instanceCode;
    @ExcelProperty(value = "生效时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date takeTime;
    @ExcelDictFormat(dictType = "policy_tag")
    @ExcelProperty(value = "政策标签")
    private String policyTag;
    @ExcelProperty(value = "业务部门")
    private String businessUnitName;

    private String customId;
    @ExcelProperty(value = "甲方主体")
    private String aparty;
    @ExcelProperty(value = "乙方主体")
    private String bparty;
    @ExcelProperty(value = "客户类别")
    private String channel;
    @ExcelProperty(value = "付款方式")
    private String payType;
    @ExcelProperty(value = "合作方式")
    private String cooperateType;
    @ExcelProperty(value = "主合同")
    private String mainParty;
}
